package com.leinao.project.service;

import com.leinao.commons.Response;
import com.leinao.job.dto.PaiJobEnvironment;
import com.leinao.job.dto.ProjectJobViewDto;
import com.leinao.util.page.PageInfo;

/**
 * @Auther: weiwei
 * @Date: 2019/6/6 15:18
 * @Description:
 * @Version 1.0
 */
public interface PublicProjectService {

    /**
      * @Description 获取公开项目的任务列表
      * @param projectId    项目Id
      * @param pageNumber   当前页数
      * @param pageSize 每页展示条数
      * @return
      * @author:    weiwei
      * @Date:  2019/6/11 10:07
      */
    Response<PageInfo> getProjectPublicJob(Long projectId, Integer pageNumber, Integer pageSize);
    
    /**
      * @Description    获取公开用户任务详情
      * @param publicJobId  任务Id
      * @param token    用户token
      * @return
      * @author:    weiwei
      * @Date:  2019/6/11 10:07
      */
    Response<ProjectJobViewDto> getUserPublicTaskDetail(Long publicJobId, String token);

    /**
     * @Description  获取任务信息
     * @param publicJobId
     * @param token
     * @return
     * @author:    weiwei
     * @Date:  2019/6/6 14:00
     */
    Response<Object> getJobInfo(Long publicJobId, String token);

    /**
     * @Description 获取任务语言框架
     * @param publicJobId
     * @param token
     * @return
     * @author:    weiwei
     * @Date:  2019/6/6 13:55
     */
    Response<PaiJobEnvironment> getJobEnvironment(Long publicJobId, String token);


    /**
     * @Description 获取任务参数
     * @param publicJobId
     * @param token
     * @return
     * @author:    weiwei
     * @Date:  2019/6/6 14:00
     */
    Response<String> getJobParams(Long publicJobId, String token);

}
